const express=require('express')
const session=require('express-session')
const app=new express()
const router=require('./router/index')
app.use(express.json())
const express_jwt=require('express-jwt')
const secretKey='zhouzhichen'//使用jsonwebtoken 的sign 生成json 字符串 例：jwt。sign({username:name},secretKey,{expiresIn:'30s'}})


//解析出来的用户信息 挂载到了 req上
//app.use(express_jwt({secret:secretKey})).unless({path:[/^\/api\//]})
app.use(express.urlencoded({extended:false}))
app.all('*', function (req, res, next) {
    //其中*表示允许所有域可跨
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Headers', 'Content-Type');
    res.header('Access-Control-Allow-Methods', '*');
    res.header('Content-Type', 'application/json;charset=utf-8');
    next();
});
// app.use(session({
// 	secret:"zhouzong",//任意字符串
// 	resave:false,//固定写法
// 	saveUninitialized:true,//固定写法
//     cookie: {maxAge: 60000},//过期时间设置为10分钟
// }))
app.use(express_jwt({secret:secretKey,algorithms:['HS256']}).unless({path:[/^\/api\//,'/login']}))
app.use(router)
//错误处理中间件
app.use(function(err,req,res,next) {
    if(err) {
        console.log(err.message);
        res.send({
            code:401,
            message:'无效的token'
        })
    }
})
app.listen(8081,function() {
	console.log('http://127.0.0.1:8081')
})